home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 5
/
Aminet 5 - March 1995.iso
/
Aminet
/
dev
/
m2
/
Turbo_1.lha
/
modula
/
docs
/
BUGS.DOC
next >
Wrap
Text File
|
1995-01-24
|
2KB
|
48 lines
Known Bugs
==========
Some Amigas, mainly (but not restricted to) some A3000/A4000, cannot use the
compiler pointer checking option ('-p'). If you get bogus 'ILLEGAL POINTER'
requesters while running any of your (or my example) programs then you
should replace the '-p' in the MODULA:M2OPTS file with '-P' and then
recompile. If you still get spurious errors then remove the flag completely.
Try to keep it on as much as possible. Pointer checking can catch a lot of
errors and save a lot of debugging time.
The code used for DIV & MOD use the M68000 semantics, which differ from
those defined in the Modula standard. The difference is only noticed
when dealing with negative numbers.
M2B sometimes get confused when implemention modules contain cyclic
importing (bad style anyway). This normally results in version mismatches at
compile/link time. Simply invoking M2B again with same command like normally
works around the problem.
This works because some of the files will have been successfully compiled,
so the during the second pass M2B sees things differently.
If youre program does not contain any cycles then M2B should always work
perfectly.
Bug reports
============
As TM2 is less than a year old, i still expect it to contain obvious
and not so obvious bugs that have yet to surface.
Any new features I add, are more likey to contain (unkown) bugs.
As the Amiga interface modules are so large they are likely to contain a few
mistakes. The structure sizes and constant values have been automatically
verified with those in the Commodore header files, however is not easily
possible to mechanically check the types of all parameters and fields.
Rare mistakes like *mi : Menu* instead of *mi : MenuItem* should be
detected during compilation: when youre program tries to instantiate the
parameter/field.
If you think i have made a mistake in the translation of the header files,
please let me know.
The executables have not been tested under the enforcer program, so
may cause hits. I use the pointer checking option (described above)
during development, so I would be suprised if any occur??
Please send bug reports to turbo@econet.demon.co.uk, and mark them
URGENT!!